The Alma Project, or How First-Order Logic Can Help Us in Imperative Programming
نویسندگان
چکیده
The aim of the Alma project is the design of a strongly typed constraint programming language that combines the advantages of logic and imperative programming. The first stage of the project was the design and implementation of Alma0, a small programming language that provides a support for declarative programming within the imperative programming framework. It is obtained by extending a subset of Modula-2 by a small number of features inspired by the logic programming paradigm. In this paper we discuss the rationale for the design of Alma-0, the benefits of the resulting hybrid programming framework, and the current work on adding constraint processing capabilities to the language. In particular, we discuss the role of the logical and customary variables, the interaction between the constraint store and the program, and the need for lists.
منابع مشابه
The Alma Project , or How First - Order LogicCan Help Us in Imperative
The aim of the Alma project is the design of a strongly typed constraint programming language that combines the advantages of logic and imperative programming. The rst stage of the project was the design and implementation of Alma-0, a small programming language that provides a support for declarative programming within the imperative programming framework. It is obtained by extending a subset ...
متن کاملReportrapport Declarative Programming, First-order Logic, Logic Programming
We p rovide here a computational interpretation of rst-order logic based on a constructive interpretation of satisability w.r.t. a xed but arbitrary interpretation. In this approach the formulas themselves are programs. This contrasts with the so-called formulas as types approach in which the proofs of the formulas are typed terms that can be taken as programs. This view of computing is inspire...
متن کاملFormulas as Programs
We provide here a computational interpretation of first-order logic based on a constructive interpretation of satisfiability w.r.t. a fixed but arbitrary interpretation. In this approach the formulas themselves are programs. This contrasts with the so-called formulas as types approach in which the proofs of the formulas are typed terms that can be taken as programs. This view of computing is in...
متن کاملAlma-0: an Imperative Language That Supports Declarative Programming Alma-0: an Imperative Language That Supports Declarative Programming
We describe here an implemented small programming language, called Alma-0, that augments the expressive power of imperative programming by a limited number of features inspired by the logic programming paradigm. These additions encourage declarative programming and make it a more attractive vehicle for problems that involve search. We illustrate the use of Alma-0 by presenting solutions to a nu...
متن کاملAlma - 0 : An Imperative Language that Supports Declarative
We describe here an implemented small programming language, called Alma-0, that augments the expressive power of imperative programming by a limited number of features inspired by the logic programming paradigm. These additions encourage declarative programming and make it a more attractive vehicle for problems that involve search. We illustrate the use of Alma-0 by presenting solutions to a nu...
متن کامل